Web applications are becoming ever more important for worldwide commerce. For example, there are currently countless numbers of web applications that offer goods and services throughout many industries. And, as technology advances, these web applications are becoming even more pervasive throughout the world economy as they are becoming more user-friendly and secure. Currently, applications are defined using Hyper-Text Markup Language (“HTML”). HTML provides a standard set of tags that define how a Web page is to be displayed. When the requested HTML document is received by the client computer system, the browser displays the Web page as defined by the HTML document. The HTML document may also contain URLs of other Web pages available on that server computer system or other server computer systems.
By way of example, it is becoming very easy for a consumer to purchase goods from a vendor, via the Internet. This can be done by logging onto the vendor's home page and simply selecting the desired goods for purchase. Once the transaction is made, the web application typically responds with a confirmation to the consumer, confirming the transaction. The confirmation may include, for example, credit card information, price, purchased goods and delivery information. The confirmation, like the remaining portions of the web application, is in HTML, for example.
The entire response (i.e., URL) is typically saved to a server so that if there is a dispute of the charge, etc., the vendor can access the confirmation information to check on the accuracy of the order. However, HTML files can be very verbose and can place a large load on the server by saving the entire response. This load may, in turn, slow server response or otherwise impair the system. Also, to save the entire response is not a trivial design task, in that a programmer or designer may not always be able to capture the correct information or any information at all, depending on the complexity of the system.
Solutions in the industry have included designing a web server module that saves a copy of any response from the application server before sending to the user. One drawback of this approach is that it will save any response and will save the entire response, i.e., an entire URL. Another approach is to actually submit a second HTTP request to the application server from business logic in a servlet. This approach also increases resource usage. For example, a second request adds to the application server load and is not guaranteed to return the exact response as the response to the user, i.e., an entire URL.
Another solution is to add a Servlet filter to the web application. In this approach, a filter is implemented to write the entire response from the servlet to a file before returning it to the user's browser. This solution could be configured to only save the responses for certain URLs but still has the drawback of having to save the entire response.
Accordingly, there exists a need in the art to overcome the deficiencies and limitations described hereinabove.